package com.jay.lang.annotation.intf;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Documented
@Inherited
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = { ElementType.CONSTRUCTOR, ElementType.METHOD,ElementType.TYPE })
public @interface MyAnnotation1 {
	String value1();
	int value2();
}

@Documented
@Inherited
@Retention(value = RetentionPolicy.SOURCE)
@Target(value = { ElementType.TYPE })
@interface MyAnnotation2 {
	String value1();
	int value2();
}

@Documented
@Inherited
@Retention(value = RetentionPolicy.RUNTIME)
@interface MyAnnotation3 {
	String value1();
	int value2() default 999;
}